package com.jy.records.mapper;

import java.util.List;
import com.jy.records.domain.BorrowRecords;
import com.jy.users.domain.Users;

/**
 * 借阅记录Mapper接口
 * 
 * @author ruoyi
 * @date 2025-05-29
 */
public interface BorrowRecordsMapper 
{
    /**
     * 查询借阅记录
     * 
     * @param recordId 借阅记录主键
     * @return 借阅记录
     */
    public BorrowRecords selectBorrowRecordsByRecordId(Long recordId);

    /**
     * 查询借阅记录列表
     * 
     * @param borrowRecords 借阅记录
     * @return 借阅记录集合
     */
    public List<BorrowRecords> selectBorrowRecordsList(BorrowRecords borrowRecords);

    /**
     * 新增借阅记录
     * 
     * @param borrowRecords 借阅记录
     * @return 结果
     */
    public int insertBorrowRecords(BorrowRecords borrowRecords);

    /**
     * 修改借阅记录
     * 
     * @param borrowRecords 借阅记录
     * @return 结果
     */
    public int updateBorrowRecords(BorrowRecords borrowRecords);

    /**
     * 删除借阅记录
     * 
     * @param recordId 借阅记录主键
     * @return 结果
     */
    public int deleteBorrowRecordsByRecordId(Long recordId);

    /**
     * 批量删除借阅记录
     * 
     * @param recordIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteBorrowRecordsByRecordIds(Long[] recordIds);

    /**
     * 批量删除图书馆用户
     * 
     * @param recordIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteUsersByUserIds(Long[] recordIds);
    
    /**
     * 批量新增图书馆用户
     * 
     * @param usersList 图书馆用户列表
     * @return 结果
     */
    public int batchUsers(List<Users> usersList);
    

    /**
     * 通过借阅记录主键删除图书馆用户信息
     * 
     * @param recordId 借阅记录ID
     * @return 结果
     */
    public int deleteUsersByUserId(Long recordId);
}
